草庐IT

Python pywin32 访问被拒绝

全部标签

windows - 无法打开 VB 项目,无法加载错误 "C:\windows\system32\mscomctl.ocx"

我有一个VB项目能够正常工作,但现在当我打开该项目时,我收到了mscomctl.ocx错误。我已经重新注册了ocx,但仍然无法加载项目。我该如何解决这个问题? 最佳答案 我在Windows764位环境中打开项目时遇到了这个问题,它在winXP机器上工作正常。我之前在项目文件中做了一个非常简单的更改,上面写着Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0;MSCOMCTL.OCX我将2.1更改为2.0因为我在很多论坛上都看到过这样的情况,而且效果很好。VBP文件中的更新引用是Ob

windows - System32 是 Windows 中的当前工作目录?

刚刚注意到windows下system32是当前工作目录(而不是执行文件所在的目录)。为什么?总是这样吗?这是故意的吗? 最佳答案 当前目录设置为进程启动的一部分。进程启动后,它可以随意更改其当前目录。当前目录被指定为CreateProcess的参数,以及用于创建进程的任何其他类似API函数。为新进程的当前目录传递NULL是很常见的。在这种情况下,将使用父进程的当前目录。所以,看看你的具体问题:Whyisthatso?如果您的进程的当前目录是system32,那是因为无论启动该进程的是什么,或者您的进程选择了它。Isitalways

c++ - 通过 FS 寄存器访问衍生进程的 TIB?

我想访问衍生进程的TIB(我使用CreateProcessW成功创建了进程)。我通过以下方式获得了指向生成进程的TIB的指针:GetThreadContext(当然有权限设置)访问pContext.SegFs像这样格式化这个值:(ldtSel.HighWord.Bits.BaseHi(我不认为这是必要的)。格式后我剩下的值是一个10位指针。我如何使用这个变量代替fs寄存器来访问线程信息block?我访问它的常规方式通常是这样的:__asm{moveax,fs:[0x30]//PEBmovdwPebBase,eax}不过,用指针变量替换“fs”当然不行,去掉分号还有意想不到的效果。那么我

windows - 从 32 位 C dll 创建 64 位 dll

我有一个从第三方获得的32位dll。他们没有64位版本。我希望将这个dll加载到64位python中。为此,我需要一个64位dll。是否有将32位dll转换为64位dll的工具,或者这是不可能的?如果不可能,我想我必须使用32位python。 最佳答案 只有供应商可以执行此操作,除非您可以访问DLL的源代码。必须针对64位重新编译它。我猜你必须使用32位python... 关于windows-从32位Cdll创建64位dll,我们在StackOverflow上找到一个类似的问题:

c++ - 从 x32 迁移到 x64 时出现链接器错误

我最近在VSprofessional2008中将一个项目从x32迁移到x64,但我遇到了这个奇怪的链接器错误:errorLNK2001:unresolvedexternalsymbol__imp_PostMessageWerrorLNK2001:unresolvedexternalsymbol__imp_FlushFileBufferserrorLNK2001:unresolvedexternalsymbol__imp_WriteFileerrorLNK2001:unresolvedexternalsymbol__imp_WaitForSingleObjecterrorLNK2001:

python - 为什么我需要 __declspec(dllexport) 来使某些函数可以从 ctypes 访问?

所以我正在学习使用Pythonctypes模块。这是我在Windows上使用gcc-shared(4.8版)编译的简单C文件,以获取示例.dll:#includeintaddition(inta,intb){returna+b;}我现在可以像这样从Python访问它:>>>fromctypesimport*>>>mylibc=CDLL(r"somepath\mysample.dll")>>>mylibc.addition>>>mylibc.addition(2,3)5现在我尝试对包含此函数的不同的、更大的和更复杂的.c文件做同样的事情:__declspec(dllexport)void

sql - Windows Phone 8 访问 SQL 远程数据库

我正在尝试开发一个WP8应用程序,并且我有一个免费的在线sqlserver(不是windowsazure)。如何从手机应用程序访问数据库?我尝试了本地WPF服务并且它有效,但如果我想将应用程序上传到商店,它无济于事。感谢您的帮助! 最佳答案 据我所知,您不能直接访问数据库,为此您需要一个代理网络服务,我建议您查看OData、RESTAPI以及JSON或XML以从中传输数据数据库到您的应用。 关于sql-WindowsPhone8访问SQL远程数据库,我们在StackOverflow上找到

c++ - 32 位程序无法捕获在 32 位进程上进行的击键,但能够捕获在 64 位进程上进行的击键

我的环境详细信息:操作系统:Windows7EnterpriseServicePack1(64位操作系统)编译器:MicrosoftVisualStudio2005(Microsoft(R)32位C/C++优化编译器版本14.00.50727.762,适用于80x86)我的程序main.exe和hook.dll是32位的InternetExplorer(iexplore.exe)是64位Chrome(chrome.exe)是32位的我编写了一个名为main.exe的C++程序,它进行以下调用:HOOKPROCcallback=(HOOKPROC)GetProcAddress(dll,"

java - Windows 7 - System32 文件夹 - java.exe

我在SO上发现了一些类似的问题,但是他们似乎都没有提供实际答案。我有这两个版本。DirectoryofC:\Java\Bit6401/19/201405:40AM.01/19/201405:40AM..10/18/201307:53AMjdk1.6.0_4501/19/201405:42AMjdk1.7.0_5110/16/201303:15PMjre1.6.0_4501/19/201405:40AMjre1.7.0_510File(s)0bytes6Dir(s)45,369,233,408bytesfreeC:\Java\Bit64>我希望我的Java6版本成为默认版本。不幸的是在C

c++ - (WIN32 API) 编辑控件样式不适用于 CreateWindowEx 中的 RichEdit

我使用了下面的代码,它运行良好,允许用户只输入数字。我想通过使用RichEdit来增加功能,所以我添加了它。我不再使用:wchar_tsampletext[]=L"foobar";HWNDinputText=CreateWindowEx(WS_EX_CLIENTEDGE,L"EDIT",sampletext,ES_NUMBER|WS_CHILD|WS_VISIBLE|WS_TABSTOP|ES_MULTILINE,10,10,500,75,hWnd,NULL,*hInst,NULL);到:LoadLibrary(L"riched32.dll");wchar_tsampletext[]=